package com.xinghai.system.domain.dto;

import com.xinghai.common.annotation.Excel;
import com.xinghai.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 *  系统派车DTO
 * 
 * @author xinghai
 * @date 2024-07-17
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
public class XhVehicleInfoDTO extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目名称 */
    @Excel(name = "项目名称")
    private String projectName;

    /** 设备类型 */
    @Excel(name = "设备类型",dictType = "eq_type")
    private Integer eqType;

    /** 项目经理 */
    @Excel(name = "项目经理")
    private String projectManager;

    /** 发货方式 */
    @Excel(name = "发货方式",dictType = "deliver_way")
    private Integer deliverWay;

    /** 发货原因 */
    @Excel(name = "发货原因说明")
    private String deliverDesc;

    /** 发货名称 */
    @Excel(name = "发货名称")
    private String deliverName;

    /** 始发地及联系人 */
    @Excel(name = "始发地及联系人")
    private List<String> beginAddr;

    /** 目的地 */
    @Excel(name = "目的地")
    private String endAddr;

    /** 详细地址及联系人 */
    @Excel(name = "详细地址及联系人")
    private String endContact;

    /** 装车人员 */
    @Excel(name = "装车人员")
    private String puckVehPeople;

    /** 发货日期 */
    @Excel(name = "要求发货日期")
    private String deliverDate;

    /** 需求到货日期 */
    @Excel(name = "要求到货日期")
    private String needGiveDate;

    /** 需求车型 */
    @Excel(name = "预估需求车型")
    private String needVehicle;

    /** 预估装载率（100.00） */
    @Excel(name = "预估装载率", readConverterExp = "1=00.00")
    private BigDecimal estimateLoadRate;

    /** 发货设备入库单号 */
    @Excel(name = "发货设备入库单号")
    private String pushStashNo;

    /** 发货设备移库单号 */
    @Excel(name = "发货设备移库单号")
    private String changeStashNo;

    /** 公里数 */
    @Excel(name = "公里数（公里）")
    private BigDecimal kilometre;

    /** 钉钉预览图片地址（逗号分割） */
    @Excel(name = "打包图片", readConverterExp = "逗号分割")
    private String dingtalkImgLinks;

    /** 是否产生异常费用 */
    @Excel(name = "是否产生异常费用",dictType = "yes_no")
    private Boolean isAbnormalSum = false;

    /** 异常费用 */
    @Excel(name = "异常费用")
    private BigDecimal abnormalSum;

    /** 是否产生异常费用 */
    @Excel(name = "是否有损失",dictType = "yes_no")
    private Boolean isQualityloss = false;

    /** 是否产生异常费用 */
    @Excel(name = "是否卸车压车费",dictType = "yes_no")
    private Boolean isYaValue = false;

    /** 需求人手机号**/
    private String mobile;
}
